package adfc2.actions;

import adfc2.core.Creature;
import adfc2.core.Item;
import adfc2.entities.Workshop;

/**
 * Действие -- положить предмет в объект (в мастерскую, контейнер, и пр.)
 */
public class PutAction extends InstantAction {

    /**
     * Что
     */
    public final Item item;
    /**
     * Куда
     */
    public final Workshop target; // TODO не только Workshop

    public PutAction(Creature actor, Item item, Workshop target) {
        super(actor);
        this.item = item;
        this.target = target;
    }

    @Override
    protected boolean perform() {
        assert (item.owner == actor);
        assert (actor.getXY() == target.getEntranceXY());
        actor.removeItem(item);
        target.addItem(item);
        return true;
    }
}
